Method and apparatus for controlling power drawn from an energy converter

ABSTRACT

A computer readable, media and signals for controlling power drawn from an energy converter to supply a load, where the energy converter is operable to convert energy from a physical source into electrical energy. Power drawn from the energy converter is changed when a supply voltage of the energy converter meets a criterion. The criterion and the change in the amount of power drawn from the energy converter are dependent upon a present amount of power supplied to the load. The methods, apparatus, media and signals described herein may provide improvements to DC to AC maximum power point tracking in an energy conversion system such as a photovoltaic power generation system.

CROSS-REFERENCE TO RELATED APPLICATION

This application is a divisional of application Ser. No. 10/672,075,filed Sep. 29, 2003, now U.S. Pat. No. 7,091,707, the disclosure ofwhich is hereby expressly incorporated by reference.

FIELD OF THE INVENTION

This invention relates to energy conversion and more particularly tomethods and apparatus for controlling power drawn from an energyconverter operable to convert energy from a physical source intoelectrical energy.

BACKGROUND

Energy conversion devices such as photovoltaic arrays are commonly usedto provide power to electrical loads. Often these loads are directcurrent (DC) loads such as batteries, for example. Recently,efficiencies in power conversion devices are giving rise to solar powersystems that supply power to an alternating current (AC) load such as anAC power grid such as may be operated by a public utility company. Suchpower systems may employ a photovoltaic array and an interface forconverting power in a form received from the photovoltaic array into aform operable to be received by the AC power grid. Such an interface mayinvolve a DC to AC inverter.

Interfaces of the type described above often seek to cause maximum powerto be provided to the AC power grid. The maximum power available to beprovided to the AC power grid depends upon the conditions under whichthe energy conversion device is operated and in the case of aphotovoltaic array, these conditions include the amount of insolationand the temperature of the array, for example. A maximum power point, orvoltage at which maximum power may be extracted from the array, is adesirable point at which to operate the array and conventional systemsseek to find this point. The maximum power point changes however, due tochanges in insolation and due to changes in temperature of the array andthus control systems are employed to constantly seek this point.

One way of seeking the maximum power point is to periodically perturband observe the power output of the array and then adjust the powerdemanded from the array accordingly to cause the voltage of the array tobe as close as possible to the maximum power point. Typically, suchperturb and observe methodologies involve perturbing the present powersupplied to the load by a fixed amount such as 4 watts, for example andthen observing the effect on power supplied by the array and the voltagemeasured at the array. Perturbing involves temporarily increasing thepower supplied to the load by a fixed amount such as 4 watts, forexample. If the change in power is negative and voltage measured at thearray drops by a significant amount, too much power is being extractedfrom the array and the power demand on the array must be reduced, inwhich case the power supplied by the array is usually reduced by somefixed incremental value, such as 4 watts, for example. If the voltagedoes not change by a significant amount when the power is perturbed,perhaps not enough power is being extracted from the array and thepresent power drawn from the array must be increased in which case thepower demanded from the array is usually increased by a fixed amount,such as 4 watts.

The above described perturb and observe methodology is typicallyconducted at the switching speed of a switching mode power supplyconnected to the array, e.g., 100 kHz, and results in a dithering ofpower drawn from the array, in fixed amounts. Where the incrementalamount is 4 watts for example, as described above, there will be aconstant dithering of power demanded from the array, in the amount of 4watts about a common mode value which may be approximately equal to themaximum power output of the array. When the load is an AC power grid,the load effectively fluctuates at the line frequency of the grid, whichin North America is typically 60 Hz. Consequently, the 100 kHz perturband observe frequency of most switching mode power supplies used tosupply DC loads is too fast for applications where the load is an ACpower grid. Thus, the perturb and observe frequency must be decreased.However, decreasing the perturb and observe frequency can waste power,especially when changes in insolation occur.

Changes in insolation can change the maximum power available from thearray from say 200 watts to 2000 watts in a matter of seconds. Thissituation may occur when a cloud, for example, moves or dissipates froma position blocking sunlight shining on the array to a position in whichfull sun is received on the array. With 4 watt power increments, and aperturb and observe period of 50 mSec, the time to change the powerdrawn from the array from 200 watts to 2000 watts would be about 22seconds. During this period the full available power is not being drawnfrom the array resulting in inefficient operation.

SUMMARY

This summary is provided to introduce a selection of concepts in asimplified form that are further described below in the DetailedDescription. This summary is not intended to identify key features ofthe claimed subject matter, nor is it intended to be used as an aid indetermining the scope of the claimed subject matter.

In accordance with one aspect of the invention there is provided amethod of controlling power drawn from an energy converter to supply aload, where the energy converter is operable to convert energy from aphysical source into electrical energy. The method involves changing theamount of power drawn from the energy converter when a supply voltage ofthe energy converter meets a criterion, said criterion and a change inthe amount of power drawn from the energy converter being dependent upona present amount of power supplied to the load.

The method may involve measuring the supply voltage.

Changing the power drawn from the energy converter may includedecreasing the power drawn from the energy converter by an amountcorresponding to a change in the power supplied to the load in a timeinterval, or it may include increasing the power drawn from the energyconverter by an amount associated with a range of power supplied to theload.

The method may involve deeming the supply voltage satisfies thecriterion when the supply voltage is within a first range of voltagesrelative to a reference voltage. The reference voltage may correspond toa maximum power point of the energy conversion device. The first rangemay include voltages greater than the reference voltage, or the firstrange may include voltages less than the reference voltage.Alternatively, the first range may include voltages less than thereference voltage and voltages greater than the reference voltage. Thefirst range may exclude a range of voltages within a limit of thereference volltage, and the first range may be dependent upon a trend inmeasured voltage. The first range may be dependent upon a change involtage occurring after an increase in power. Moreover, the first rangemay be bounded between minimum and maximum limits.

The method may further involve performing the method periodically, anddefining a period for performing the method periodically. Defining theperiod may include defining the period as a function of the powersupplied to the load. The method may involve increasing the period whenthe power supplied to the load is relatively low and decreasing theperiod when the power supplied to the load is relatively high.

The method may further involve adjusting the reference voltageperiodically, or may involve increasing the reference voltage when achange in power drawn from the energy converter results in a change insupply voltage within a second range. The second range may be dependentupon the amount of power being supplied to the load. The second rangemay be relatively small when a relatively large amount of power issupplied to the load and the second range may be relatively large when arelatively small amount of power is supplied to the load. The amount bywhich the reference voltage is decreased may be dependent upon theamount of power supplied to the load. The amount by which the referencevoltage is decreased may be relatively large when the amount of powersupplied to the load is relatively low and the amount by which thereference voltage is decreased may be relatively low when the amount ofpower supplied to the load is relatively high.

In accordance with another aspect of the invention there is provided anapparatus for controlling an energy transfer device operable to drawelectrical energy from an energy converter operable to convert energyfrom a physical source into electrical energy and supply the electricalenergy to a load. The apparatus includes a load power sensor operable tomeasure power supplied to the load by the energy transfer device, avoltage sensor operable to measure a supply voltage the energyconverter, and a processor, in communication with the voltage sensor,the load power sensor and the energy transfer device. The processor isconfigured to cause the energy transfer device to change the amount ofpower drawn from the energy converter when the supply voltage of theenergy converter meets a criterion, wherein said criterion and thechange in power drawn from the energy converter is dependent upon apresent amount of power being supplied to the load.

The processor may be configured to decrease the power drawn from theenergy converter by an amount corresponding to a change in the powersupplied to the load in a time interval. Alternatively, the processormay be configured to increase the power drawn from the energy converterby an amount associated with a range of power supplied to the load.

The processor may be configured to deem that the supply voltagesatisfies the criterion when the supply voltage is within a first rangeof voltages relative to a reference voltage. The reference voltage maycorrespond to a maximum power point of the energy conversion device.

The first range may include voltages greater than the reference voltage,it may includes voltages less than the reference voltage, or it mayinclude voltages less than the reference voltage and voltages greaterthan the reference voltage. The first range may exclude a range ofvoltages within a limit of the reference voltage, and may be dependentupon a trend in measured voltage. The first range may further bedependent upon a change in voltage occurring after an increase in power,and may be bounded between minimum and maximum limits.

The processor may be configured to periodically measure the supplyvoltage and change the power drawn from the energy converteraccordingly, and may be further configured to define a period formeasuring the supply voltage, and the period may be defined as afunction of the power supplied to the load. The processor may beconfigured to increase the period when the power supplied to the load isrelatively low and decrease the period when the power supplied to theload is relatively high.

The processor may be configured to adjust the reference voltageperiodically. The processor may be configured to increase the referencevoltage when an increase in power drawn from the energy converterresults in a change in supply voltage within a second range.

The second range may be dependent upon the amount of power being drawnfrom the energy converter. The second range may be relatively small whenrelatively large amounts of power are being supplied to the load and thesecond range may be relatively large when relatively small amounts ofpower are being supplied to the load. The processor may be furtherconfigured to decrease the reference voltage by an amount dependent uponthe amount of power supplied to the load. In particular, the processormay be configured to decrease the reference voltage by a relativelylarge amount when the power supplied to the load is relatively low andto decrease the reference voltage by a relatively small amount when thepower supplied to the load is relatively high. The apparatus may includean output operable to provide a power command signal to the energytransfer device, and the processor may be configured to produce thepower command signal to represent the change in power to be drawn fromthe energy converter.

In accordance with another aspect of the invention there is provided asystem including the foregoing apparatus and further including theenergy transfer device. The energy transfer device may include a DC toDC converter connected between the energy converter and the load, andmay also include a DC to AC inverter connected between the DC to DCconverter and the load. The system may further include the load, and theload may include an AC power grid. The processor may include an outputoperable to provide a power command signal to the energy transferdevice, and the processor may be configured to produce the power commandsignal to represent the change in power to be drawn from the energyconversion device.

In accordance with another aspect of the invention there is provided anapparatus for controlling an energy transfer device operable to drawelectrical power from an energy converter operable to convert energyfrom a physical source into electrical energy, and supply the electricalenergy to a load. The apparatus includes provisions for measuring powersupplied to the load by the power transfer device, provisions formeasuring a supply voltage of the energy converter, and provisions, incommunication with the provisions for measuring power, the provisionsfor measuring voltage and the energy transfer device, for changing theamount of power drawn from the energy converter by the energy transferdevice when a supply voltage of the energy converter meets a criterion,wherein said criterion and a change in the amount of power drawn fromthe energy converter are dependent upon a present amount of power beingsupplied to the load.

In accordance with another aspect of the invention there is provided acomputer readable medium encoded with codes for directing a processorcircuit to control an energy transfer device operable to draw power froman energy converter operable to convert energy from a physical sourceinto electrical energy, and supply the energy to a load, the codesdirecting the processor circuit to cause the energy transfer device tochange the amount of power drawn from the energy converter when a supplyvoltage of the energy converter meets a criterion, said criterion and achange in the amount of power drawn from the energy converter isdependent upon a present amount of power supplied to the load.

In accordance with another aspect of the invention there is provided acomputer readable signal encoded with codes for directing a processorcircuit to control an energy transfer device operable to draw power froman energy converter operable to convert energy from a physical sourceinto electrical energy, and supply the energy to a load, the codesdirecting the processor circuit to cause the energy transfer device tochange the amount of power drawn from the energy converter when a supplyvoltage of the energy converter meets a criterion, said criterion and achange in the amount of power drawn from the energy converter beingdependent upon a present amount of power supplied to the load.

Other aspects and features of the present invention will become apparentto those ordinarily skilled in the art upon review of the followingdescription of specific embodiments of the invention in conjunction withthe accompanying figures.

DESCRIPTION OF THE DRAWINGS

The foregoing aspects and many of the attendant advantages of thisinvention will become more readily appreciated as the same become betterunderstood by reference to the following detailed description, whentaken in conjunction with the accompanying drawings, wherein:

FIG. 1 is a block diagram of an energy conversion system according to afirst embodiment of the invention;

FIG. 2 is a graph of power-voltage characteristics of a photovoltaiccell array for various values of insolation S at a temperature of 25degrees Celsius;

FIG. 3 is a block diagram of an energy transfer device according to anembodiment of the invention;

FIG. 4 is a block diagram of a processor circuit of the load interfaceshown in FIG. 3;

FIG. 5 is a flow chart of a main routine executed by the processorcircuit shown in FIG. 4;

FIG. 6 is a flow chart of a regulation window calculation subroutinecalled by the main routine shown in FIG. 5;

FIG. 7 is a schematic representation of regulation zones associated withthe photovoltaic array shown in FIG. 2;

FIG. 8 is a flow chart of a regulate routine called by the main routineshown in FIG. 5;

FIG. 9A is a flow chart of a more power routine called by the regulateroutine shown in FIG. 8;

FIG. 9B is a table for determining a change in power according to acurrent AC power being provided by the system shown in FIG. 3;

FIG. 10A is a flow chart of a less power routine called by the regulateroutine shown in FIG. 8;

FIG. 10B is a Table relating present AC power to a DC offset value, anMPPT increase value and a back-off value used by the second portion ofthe less power routine shown in FIG. 10A;

FIG. 11A is a flow chart of a find MPPT subroutine called by the mainroutine shown in FIG. 5; and

FIG. 11B is a Table relating current AC power to an MPPT limit used bythe find MPPT subroutine shown in FIG. 11A.

DETAILED DESCRIPTION

Referring to FIG. 1 an energy supply system according to a firstembodiment of the invention is shown generally at 10. The systemincludes an energy converter 12 and an energy transfer device 14 whichtogether cooperate to supply energy to a load 16.

The energy converter 12 is of a general class of energy conversiondevices that are able to supply electrical power in response to a supplyof physical energy. Such devices are able to be operated underconditions where the supply voltage and supply current produced by thedevice are optimized such that for a given physical power input amaximum electrical power, i.e. a maximum working power is produced. Thesupply current and supply voltage conditions under which maximum workingpower can be extracted from the energy conversion device changedepending upon the physical power available and operating conditions ofthe device.

For example, the energy converter 12 may include a photovoltaic arrayand the energy transfer device 14 may include a DC to AC converter forsupplying electrical energy to an AC load such as an AC power grid.

Where the energy converter 12 includes a photovoltaic array, physicalenergy in the form of light energy is converted by the photovoltaicarray into electrical energy. The maximum working power that can bedrawn from the photovoltaic array depends upon the physical poweravailable, i.e. the amount of light insolating the array and thetemperature of the array. For every insolation and temperaturecombination there is a maximum power point at which the supply voltageand supply current produced by the array are optimized to cause maximumenergy conversion efficiency, or in other words to allow the mostworking power possible to be drawn from the array. Changes in voltage atthe array are effected by changes in the amount of current drawn fromthe array. In general, the greater the current draw, the less thevoltage. Since the power drawn from the array may be calculated as theproduct of the current and voltage at the array, the power output of thearray may be plotted relative to voltage as shown in FIG. 2, for variouslevels of insolation. From FIG. 2 it can be seen that the power outputof the photovoltaic array increases to a point and then decreases withincreasing array voltage. The point at which the power is the greatestis the maximum power point. The embodiment described herein seeks tofind this maximum power point and regulate the output voltage of thearray to it.

In the embodiment shown, referring back to FIG. 1, in accordance withone aspect of the invention, the energy transfer device 14 controls thepower drawn from the energy converter 12 by measuring a supply voltageof the energy converter and when the measured supply voltage satisfies afirst criterion dependent upon the power supplied to the load, theamount of power drawn from the energy converter is, in one mode ofoperation, changed by an amount dependent upon the amount of power beingsupplied to the load 16. Changing the amount of power being drawn fromthe energy converter may involve decreasing the power by an amountcorresponding to a change in the power supplied to the load during atime interval or increasing the source power by an amount associatedwith a range of output power.

Referring to FIG. 3, to appreciate how the energy transfer device 14 canproduce this effect, the following example is provided in which theenergy converter 12 is a photovoltaic array 18 and the energy transferdevice 14 includes a Xantrex Suntie® utility grid interactive inverter20. The inverter 20 employs two conversion stages including a DC to DCconverter 22 operable to convert input power from the array 18 at anominal supply voltage of 48 volts to stored power at a voltage of about380 volts. This converter is a closed loop device and is operable toprovide power at a constant DC voltage of 380 volts. The inverter 20further includes a DC to AC inverter 24 operable to convert the storedpower at 380V into AC power at 240 RMS volts. The load 16 is an AC powergrid operated by a public utility company, for example.

The power inverter 20 has a processor 26 operable to control the DC toDC converter 22 and DC to AC inverter 24 to change the amount of workingpower drawn from the array 18 to correspondingly change the amount ofworking power supplied to the AC load 16. To do this the inverter 20includes a DC current sensor 28 for sensing the current supplied by thearray 18, a DC voltage sensor 30 for sensing the supply voltage at thearray 18, and an AC power sensor 32 for sensing AC power supplied to theAC load 16. These sensors 28, 30 and 32 are in communication with theprocessor 26 and the controller is able to read and interpret signalstherefrom as array current (Ik), array voltage (Vk) and AC power (ACP)respectively. The sensors 28, 30 and 32 may respectively provide acurrent measurement resolution of about 62.5 mA, a voltage resolution ofabout 0.125V, and an AC power resolution of about 1W, for example.

Referring to FIG. 4, the processor 26 may include a microchip PIC16F876A, for example, having a CPU 40, a program memory 42, randomaccess memory 44 and an I/O interface 46. Signal lines 48, 49 and 51operable to receive a signal from the DC current sensor 28, a signalfrom the DC voltage sensor 30 and a signal from the AC power sensor 32,respectively, are connected to the I/O interface. The I/O interface 46also provides an AC power command signal to the DC to AC inverter 24,specifying a desired AC power to be supplied to the AC power grid 16. Ingeneral, in response to the DC current signal, the DC voltage signal andthe AC power signal, an appropriate AC load power command signal isproduced by the processor 26 to control the DC to AC inverter 24 suchthat maximum power is extracted from the array 18.

The processor 26 may be the same processor used to control switching oftransistors in the DC to DC converter 22 and the DC to AC inverter 24,for example, and programs for controlling the DC to DC converter 22 andDC to AC inverter 24 may be stored in the program memory 42. Inaddition, the program memory 42 may be programmed with codes fordirecting the processor 26 to carry out methods according to variousembodiments and aspects of the embodiment of the invention as describedherein. In particular, these codes may cause the processor 26 toimplement control routines described by way of the flowcharts, tablesand graphs shown in FIGS. 5-11B to effect the functionality of themethods according to this embodiment of the invention.

Referring to FIG. 5, a main routine according to the first embodiment ofthe invention is shown generally at 50. This routine is run every 16.66milliseconds. This 16.66 millisecond period is chosen because it is theperiod of the line frequency (60 hertz) of the AC power supplied to thegrid. Thus, the main routine is invoked once for every cycle of the ACwaveform provided to the AC power grid.

The main routine begins by causing the processor 26 to execute any DC toDC and DC to AC control modules, as shown at 52. As part of thesemodules, a measurement of the photovoltaic array voltage Vk is taken, ameasurement of the current Ik produced by the photovoltaic array istaken and an AC power measurement ACP is taken. Also within thesemodules, the array voltage Vk and array current Ik measurement valuesare multiplied together to produce a power value Pk associated with thecurrent pass through the routine. A power value calculated from one ormore previous passes through the routine may be stored to enable achange in power value to be calculated within these modules. Arepresentation of a change in power dP from one pass through the routineto the next is required in subsequent routines described herein.Similarly, a change in voltage dV from one pass to next is calculatedfor use in subsequent routines.

After completing the DC to DC and DC to AC control modules 52, block 54directs the processor 26 to a “calculate regulation window” routine.

Referring to FIG. 6, the “calculate regulation window” routine is shownat 56 and begins with a first block 58 that causes the processor 26 todetermine whether the change in power since the last pass is greaterthan zero and whether the change in voltage since the last pass is lessthan or equal to zero and whether or not a state variable labeled“action” is equal to a regulate increase state. (The way in which theaction state variable is set will be described below).

Assuming the above conditions are met, block 60 directs the processor 26to set a variable referred to as dv_mp equal to the change in voltagesince the last increase in power caused by a “more power” routinedescribed below, and is thus dependent upon the trend in measured arrayvoltage. Block 62 then directs the processor 26 to determine whetherthis dv_mp value is greater than a pre-set value, in this instance 2.0volts, and if so, block 64 directs the processor 26 to set the dv_mpvalue to 2.0. Block 66 directs the processor 26 to determine whether thedv_mp value is less than another predetermined value, in this case 0.25volts, and if so, block 68 directs the processor 26 to set the dv_mpvalue equal to 0.25 volts. In effect, blocks 62 through 68 cause theprocessor 26 to set the dv_mp value to the average change in voltageover the last two power increases between a maximum value of 2.0, and aminimum value of 0.25.

Referring to FIG. 7, the dv_mp value is used to define a boundarybetween a regulate increase zone shown generally at 70 and a no-actionzone shown generally at 72 among the possible range of array voltagesV_(k). The effect of changes in dv_mp are to adjust up or down, theboundary between the regulate increase zone 70 and the no-regulate zone72 indicated by line 74. The no-action zone 72 is defined between thisboundary 74 and a line 76 determined by a maximum power point trackingreference voltage (MPPT_ref) which is initially set at about 84% of theopen circuit voltage of the array in this embodiment. Below this line 76a regulate decrease zone 77 is established. The regulate increase zone70 acts as a first range of voltages relative to a reference voltagecorresponding to a maximum power point of the array, and includesvoltages greater than the reference voltage (MPPT_ref). The regulatedecrease zone includes a range of voltages less than the referencevoltage (MPPT_ref). A first range of voltages for which criteria forchanging the amount of power drawn from the array are considered to bemet thus includes voltages in the regulate increase and regulatedecrease zones 70 and 77 and excludes a range of voltages within a limitof the reference voltage, i.e., the no-action zone 72. Thus the criteriafor changing the amount of power drawn from the energy converter arewhether or not the array voltage is within the regulate increase zone 70or the regulate decrease zone 77.

When the change in voltage on successive passes through the routineshown in FIG. 6 is low, the no-action zone 72 is relatively small andthe regulate increase zone 70 is relatively large. Conversely, when thedv_mp value is large, the no-action zone 72 is large and the regulateincrease zone 70 is relatively small. The 0.25 and 2.0 lower and upperlimits effectively bound the first range of voltages for which thecriteria for changing the amount of power drawn from the array are metwithin minimum and maximum limits.

Referring back to FIG. 6, effectively the calculate regulation windowvalue routine sets the dv_mp value to establish the boundary 74 shown inFIG. 7 between the regulate increase zone 70 and the no-action zone 72thus defining the width of the no-action zone. The establishment of thevariable-sized no-action zone 72 eliminates dithering and allows theprocessor circuit to change its sensitivity to changes in voltage,depending upon the trend in voltage increases and decreases.

Referring back to FIG. 5, after calculating the regulation window, block80 directs the processor 26 to determine whether a loop time out valuehas occurred. Later in the main routine 50, the loop value is set asshown at block 82 as will be described below. An initial loop value of50 milliseconds, for example, may be set such that for example, on everythird pass through the main routine shown at 50, the loop time out valuewill expire, and as shown at block 84, control of the processor 26 willpass to a regulate routine.

Referring to FIG. 8, the regulate routine is shown in greater detail at85. The regulate routine begins with a first block 86 that directs theprocessor 26 to determine whether the present voltage of the array isgreater than the sum of the MPPT_ref voltage and the dv_mp value. Inother words, this block determines whether or not the array voltageV_(k) is in the regulate increase zone 70 shown in FIG. 7. If so, block88 directs the processor 26 to set the action state variable to“regulate increase” and then a “more power” routine is called as shownat 90 to increase the power drawn from the array. If, however, at block86, the array voltage V_(k) is not in the regulate increase zone 70,block 92 directs the processor 26 to determine whether the array voltageV_(k) is in the regulate decrease zone 77. If so, block 94 directs theprocessor 26 to set the action state value to “regulate decrease” andblock 96 directs the processor 26 to call a “less power” routine toreduce the power demanded from the array. If the array voltage V_(k) isin neither the regulate increase zone 70 or the regulate decrease zone77 as determined by blocks 86 and 92, the regulate routine 85 is endedand the processor 26 is returned to the remaining portion of FIG. 5(block 150). Referring to FIG. 7, when the voltage of the array is inthe no-action zone 72, no action is taken to increase or decrease thepower demanded from the array.

Referring back to FIG. 8, when the processor 26 calls the more powerroutine as shown at block 90, the more power routine shown at 100 inFIG. 9A is executed.

Generally, the more power routine 100 begins with a first block 102 thatcauses the processor 26 to determine whether or not the array voltageV_(k) is greater than the sum of the MPPT_ref voltage and a predefinedvalue, for example, 2.0 volts. When the array voltage V_(k) is more than2.0 volts above the MPPT_ref voltage, block 104 directs the processor 26to set a power step variable according to Table A shown in FIG. 9B. Useof this table involves using the presently measured AC load power valueas an index to the table to determine which of a plurality of powerranges, the present AC load power value falls into. If the AC load powervalue is between zero and 40 volts, for example, the power step value isset to 4 watts. If the AC load power is between 800 watts and themaximum power available, the power step value is set to 24 watts, forexample. In general, progressively larger AC load power ranges areassociated with progressively larger power step values.

Once the power step value is known, referring back to FIG. 9A, block 106causes the power command signal to be set according to the power stepvalue to increase the power demanded from the array by the power stepvalue, subject to unit limits. Referring back to FIG. 9B, it willappreciated that as the AC load power increases, the power step valueincreases and thus the change in power in the power command is larger,at larger AC load power values.

Referring back to FIG. 9A, if the array voltage V_(k) is not greaterthan (MPPT_ref+2.0), block 108 sets the power step value to a fixedvalue, in this case 4 watts, and block 106 causes the power command tobe increased to request 4 more watts from the array. In effect, the morepower routine 100 provides for larger increases in power demanded fromthe array when the array voltage V_(k) is relatively high and thesupplied AC load power is high. Similarly, when the array voltage V_(k)is closer to the MPPT_ref value, a smaller, fixed change in power isused, since it is assumed that the array is operating closer to themaximum power point. The effect of varying the change in power accordingto the present AC power being supplied to the load and subject to thearray voltage meeting the indicated condition, provides for wideincreases in power at higher AC load power levels, thus allowing themaximum available power from the array to be supplied to the AC gridquicker, than if a fixed, relatively small step size such as 4 wattswere used. This allows the system to achieve its optimal operating pointvery quickly, allowing it to change its output from 200 W to 2000 W inabout four seconds, for example.

Referring back to FIG. 8, when the array voltage V_(k) is less than theMPPT_ref value, the less power routine is called at block 96.

The less power routine is shown in FIG. 10A, with further reference toFIG. 10B. A first part of the less power routine is shown in FIG. 10A at110 and begins with a first block 112 that causes the processor 26 todetermine whether the change in power since the last pass through themain routine shown in FIG. 5 is negative. If so, block 114 directs theprocessor 26 to issue a power command to the DC to AC inverter 24 tocause a decrease in the power demanded from the array by an amount equalto the difference in power demanded since the last pass through the mainroutine. On the other hand, if the change in power is not negative,i.e., zero or positive, block 116 directs the processor 26 to issue apower command that decreases the power demanded from the array by afixed amount such as 4 watts, for example. In effect, block 114decreases the power demanded from the array by an amount depending onthe change of power, and block 116 decreases the power demanded from thearray by a fixed amount.

After either block 114 or 116 has been executed, a second part of theless power routine as shown at 118 is executed. This second part 118 ofthe less power routine includes a first block 120 that causes theprocessor 26 to determine whether or not a backoff timer has timed out.If not, the less power routine is ended. If so, block 122 directs theprocessor 26 to determine whether or not the action state variable hasbeen set to “regulate decrease”. If not, then the less power routine isended. If so, however, block 124 directs the processor 26 to use Table Bof FIG. 10B to determine a DC offset value shown in column 126associated with an AC load power range shown in column 128 in which thecurrent AC load power falls. Then, block 130 directs the processor 26 todetermine whether or not the present array voltage V_(k) is less thanthe current MPPT_ref value less the DC offset value found in block 124and if not, the less power routine is ended. If the array voltage V_(k)is less than the MPPT_ref less the DC offset, i.e., it is within asecond range, block 132 increases the MPPT_ref value by the amountindicated in Column 134 of Table B in FIG. 10B associated with the powerrange in which the current AC load power falls. Thus, the second rangeis dependent upon the amount of power being supplied to the load. Thesecond range is relatively small when a relatively large amount of poweris supplied to the load and is relatively large when a relatively smallamount of power is supplied to the load. Any increases in MPPT_ref maybe limited to ensure MPPT_ref is no greater than the open circuitvoltage of the array less some guard value such as 3 volts, for example.(The open circuit voltage of the array may be measured periodically toallow for changes in the open circuit voltage to be monitored.)Similarly, block 136 directs the processor 26 to set a back-off timervalue selected from column 138 in Table B of FIG. 10B associated withthe AC power range in which the current AC power falls.

Referring back to FIG. 10A, block 140 then directs the processor 26 todetermine whether or not the current adjusted MPPT_ref value is lessthan 85% of the open circuit voltage of the array. (The open circuitvoltage is previously known from initial measurements). If the MPPT_refvalue is not less than 85% of the open circuit voltage of the array, theless power routine is ended, leaving the back-off value at that whichwas selected from Table B in FIG. 10C. Otherwise, if the MPPT_ref valueis less than 85% of the open circuit voltage of the array, block 142directs the processor circuit to set the back-off value to a minimumvalue which, in this embodiment may be 240, for example. The effect ofthe second part of the less power subroutine is to prevent constantlychanging conditions from excessively adjusting the MPPT_ref value toooften. Effectively, the MPPT_ref value is increased only when theregulation routine described above is not able to keep the array voltageV_(k) above a threshold value.

Referring back to FIG. 5, after the call regulate routine has beenexecuted, or if the loop timeout value has not yet been reached, theprocessor 26 is directed to block 150 of FIG. 5.

Block 150 directs the processor 26 to determine whether it is time tofind a new MPPT_ref value. To do this, a timer may be preprogrammed withan appropriate value to cause the timer to time out every 10 seconds,for example. Thus, every 10 seconds, it is time to find a new MPPT_refvalue. Provisions may be included for ensuring the source power is abovesome minimum value such as 20 Watts, for example, before enabling the 10second timer. Initially, the MPPT_ref value is set to about 84% of theopen circuit voltage of the array. This is typically about 10% higherthan the expected MMPT_ref value for most photovoltaic arrays, but itallows the circuit to more readily adapt to different arrays. This alsoeliminates the need to sweep the array.

When the timer times out, block 152 directs the processor circuit tocall a find MPPT subroutine as shown at 153 in FIG. 11A, with referenceto FIG. 11B. Referring to FIG. 11A, the find MPPT routine 153 beginswith a first block 156 that directs the processor 26 to determinewhether or not this is the first pass through the routine. Detection ofwhether or not the present pass through the routine is the first passmay be achieved by detecting whether or not a first pass flag (notshown) has been set and if not set, setting it and directing theprocessor to block 158. If the first pass flag has been set, then thepresent pass through the MPPT routine is not the first pass and theprocessor is directed to block 168. When the present pass through theroutine is the first pass, block 158 directs the processor 26 todetermine whether the array voltage V_(k) is less than the MPPT_refvoltage, i.e., whether the array voltage is within the regulate decreasezone shown in FIG. 7. If so, block 160 directs the processor 26 to setthe action state variable to “sweep decrease” and then block 162 directsthe processor 26 to call the less power routine described in FIG. 10A.Block 163 then directs the processor 26 to reset the MPPT loop timeoutvalue so that another ten seconds will pass before the find MPPT routineis run again. The routine is ended after block 163.

If at block 158 the array voltage V_(k) is not less than the MPPT_refvalue, block 164 directs the processor circuit to set the action statevariable to “sweep increase” and block 166 directs the processor 26 tocall the more power routine shown in FIG. 9A. Referring back to FIG.11A, after the more power routine has been called, the MPPT routine isended.

Referring back to FIG. 11A, if at block 156 it is determined that thecurrent pass is not the first pass through this routine, the processor26 is directed to block 168 which causes it to determine whether or notthe change in power since the last pass through this routine, is greaterthan or equal to zero. If not, block 170 directs the processor 26 to setthe action state variable to “sweep decrease” and block 172 directs theprocessor 26 to call the less power routine shown in FIGS. 10A. Asdescribed above, the less power routine includes blocks that employtable B in FIG. 10B to increase MPPT_ref. The effect of the table is touse the current AC load power to determine an array voltage limit belowwhich no increase in MPPT_ref occurs and above which a specific increasedependent upon current AC power is effected. This also makes the circuitsensitive to trends in power, rather than to instantaneous power.

Referring back to FIG. 11A, if at block 168, the change in power is lessthan zero, the processor 26 is directed to block 174 which causes it todetermine whether or not the change in voltage since the last passthrough this routine is less than or equal to a threshold value of, inthis embodiment, 2 volts for example. Block 176 then directs theprocessor 26 to set the action state variable to “sweep increase” andblock 178 directs the processor 26 to call the more power routine shownin FIG. 9A.

Referring to FIG. 9A, the more power routine includes a block 179 shownin broken outline which determines whether or not the action statevariable is equal to “sweep increase” as set by block 176 in FIG. 11A.If so, the processor 26 is directed to block 108 of FIG. 9A wherein thepower step value is set to 4 watts such that block 106 causes a powercommand to be issued to request 4 more watts from the system.

Referring back to FIG. 11A, block 182 directs the processor 26 todetermine whether or not the present power being provided to the AC gridby the system is within pre-specified limits. If not, the find MPPTroutine is ended. If so, block 184 directs the processor 26 to determinewhether a total decrease of the MPPT_ref value as of this pass throughthe routine is less than an MPPT limit value established according toTable C in FIG. 11B in response to the present AC power provided by thesystem. If so, block 186 is permitted to reduce the MPPT_ref value by⅛^(th) volts unless the MPPT_ref value is less than 40 volts, which inthis case is a minimum voltage bound. The ⅛ volt reduction is equivalentto the resolution of the voltage sensor 30. The bounds checking atblocks 184 and 186 avoids excessive changes in MPPT_ref and insteadmakes the circuit sensitive to power trends rather than instantaneouspower values. In general, the amount by which MPPT_ref is decreased isdependent upon the amount of power supplied to the load and isrelatively large when the power supplied to the load is small and isrelatively small when the power supplied to the load is large. Afterblock 186, the find MPPT routine is ended but the MPPT loop timer is notreset, therefore on the next pass through the main routine shown in FIG.5, it will still be time to find MPPT and another pass through the MPPTroutine will be initiated.

After the call less power routine is invoked at block 172, or the changein voltage is not less than or equal to Vth at block 174, or the ACPower is not less than the Powerlimit-Pth at block 182 or the totaldecrease of MPPT_ref is not less than MPPT_limit at block 184, block 187directs the processor 26 to reset variables and reset the MPPT looptimer to cause the processor to wait another ten seconds beforeexecuting the find MPPT routine again.

The effect of the MPPT routine is—while the change in power is greaterthan or equal to zero and while the change in voltage is less than orequal to the threshold voltage—to reduce the MPPT_ref value by ⅛^(th)volts on each pass through the routine until a maximum reduction amountis achieved, the maximum reduction amount being determined by thepresent AC load power being provided to the AC grid. When the present ACload power is low, the MPPT limit is high, whereas when the present ACpower is high, the MPPT limit is low. The MPPT routine thus acts as amodified perturb and observe routine that decreases MPPT_ref while theless power routine serves to increase MPPT_ref. Both of these routinesadjust the MPPT_ref value on the basis of the present amount of powerbeing supplied to the load. Consequently, the apparatus tracks themaximum power point of the energy converter more accurately. Since theMPPT_ref value is dependent upon the present power being supplied to theload and since the MPPT_ref value establishes the boundaries shown inFIG. 7. Effectively the criteria to be met by the array voltage to causea change in the amount of power drawn from the array are dependent uponthe present power being supplied to the load.

After completion of the MPPT routine shown in FIG. 11A, the processor 26is directed back to block 82 of FIG. 5. Block 82 directs the processor26 to set the loop value for the loop timeout test at block 80 as afunction of the power supplied to the load. In this embodiment, settingof the loop value is done according to the formula (2560/(AC_power+1)subject to upper and lower bounds which in this embodiment are 60 and 3respectively. When the dynamic loop value is 60 for example, the looptime out and hence the regulate routine will be run every second andwhen the dynamic loop value is 3, for example, the loop time out andhence the regulate routine will occur approximately every 50milliseconds, or 20 times per second. The loop value is dependent uponthe AC power and as the AC power increases, the loop value decreasescausing the loop time out to occur more frequently. Similarly, as ACpower decreases, loop time out occurs less frequently. When the amountof power supplied to the AC load is low, capacitors in the DC to DCconverter and in the DC to AC inverter are the source of power for anyincreases in power and thus any increase in load measured at the arraywill be delayed. Consequently, it is desirable to cause the loop timeoutto occur more frequently so that the processor can react more quickly toincreases in the AC load. When operating at high power levels, thecapacitors are being drained more quickly and thus, changes in load aremore readily seen by the processor and therefore more frequent looptimeouts serve no useful purpose. Thus, at high power levels the looptimeout value can be high resulting in less frequent monitoring by theprocessor circuit. The specific formula for calculating the loop valueis appropriate for the Suntie® inverter and it will be appreciated thatin other systems employing different capacitors, the formula may bedifferent with the general goal of enabling the processor circuit torespond less frequently at low AC power levels and more frequently athigh power levels.

Effectively the method and apparatus described herein cause power to beextracted from an energy converter in a manner in which maximum power isdrawn from the energy converter. This is achieved by operating theenergy converter such that current is drawn at a level that maintainsthe supply voltage of the energy converter as close as possible to amaximum power point tracking voltage of the energy converter. Since thismaximum power point tracking voltage changes with operating conditionsof the energy converter, one part of the control method described hereinupdates this maximum power point tracking voltage and another partadjusts the amount of power drawn from the energy converter to cause theenergy converter voltage to track as close as possible to the maximumpower point tracking voltage.

The methods and apparatus described herein effectively load the energyconverter until the power extracted from the energy converter startsdecreasing and the voltage of the energy converter is also decreasing.This condition signifies that the energy converter is operating past itspeak power point. The energy converter voltage at this point isconsidered a reference voltage (MPPT_ref) and subsequently, the level ofcurrent drawn from the energy converter is generally maintained suchthat the voltage of the energy converter is held as close as possible tothis reference value, at least until it is updated.

In general where switching power supplies are used in conjunction withan energy converter, such devices have little tolerance for being on thenegative side of the MPPT_ref point and are subject to collapse.Therefore the control methods and apparatus described herein attempt tokeep the energy converter voltage on the positive side of the MPPT_refpoint. Furthermore, in the specific application described herein DC toDC switching power supplies driving DC to AC inverters generally do notact in a linear manner to changes in power imposed by the DC to ACinverter, especially due to power storage in each device. Thus, themethods and apparatus described herein attempt to observe trends inpower and voltages to ensure more reliable operation and set changes inthe amount of power drawn from the energy converter on the basis ofpower supplied to the load rather than power drawn from the energyconverter to enable these control methods to be used in DC to AC energyconversion applications.

While specific embodiments of the invention have been described andillustrated, such embodiments should be considered illustrative of theinvention only and not as limiting the invention as construed inaccordance with the accompanying claims.

1. A computer readable storage medium encoded with computer-executableinstructions for controlling power drawn from an energy converter by anenergy transfer device to supply an AC load, where the energy converteris operable to convert physical energy into electrical energy, thecomputer-executable instructions performing the step of changing by theenergy transfer device the amount of power drawn from the energyconverter when a supply voltage of the energy converter meets acriterion, said criterion and a change in the amount of power drawn fromthe energy converter being dependent upon a present amount of powersupplied to the AC load, deeming said supply voltage to satisfy saidcriterion when said supply voltage is within a first range of voltagesrelative to a reference voltage; wherein said first range of voltages isdependent upon a trend in measured values of said supply voltage; and achange in said supply voltage occurring after an increase in said powerdrawn from the energy converter.
 2. The computer readable storage mediumof claim 1 wherein said computer-executable instructions furtherperforming the step of measuring said supply voltage.
 3. The computerreadable storage medium of claim 1 wherein said step of changing saidpower drawn from the energy converter comprising decreasing said powerdrawn from the energy converter by an amount corresponding to a changein said power supplied to the AC load in a time interval.
 4. Thecomputer readable storage medium of claim 1 wherein said step ofchanging said power drawn from the energy converter comprisingincreasing said power drawn from the energy converter by an amountassociated with a range of power supplied to the AC load.
 5. Thecomputer readable storage medium of claim 1 wherein said referencevoltage corresponds to a maximum power point of the energy converter. 6.The computer readable storage medium of claim 1 wherein said first rangeincludes voltages greater than said reference voltage.
 7. The computerreadable storage medium of claim 1 wherein said first range includesvoltages less than said reference voltage.
 8. The computer readablestorage medium of claim 1 wherein said first range of voltages includesvoltages less than said reference voltage and voltages greater than saidreference voltage.
 9. The computer readable storage medium of claim 1wherein said first voltage range excludes a range of voltages within alimit of said reference voltage.
 10. The computer readable storagemedium of claim 1 wherein said first range of voltages is boundedbetween minimum and maximum limits.
 11. The computer readable storagemedium of claim 1 wherein said computer-executable instructions furtherperiodically performing the step of changing the amount of power drawn.12. The computer readable storage medium of claim 11 wherein saidcomputer-executable instructions further performing the step of defininga period for the periodic performance of said step of changing theamount of power drawn.
 13. The computer readable storage medium of claim12 wherein defining said period comprising defining said period as afunction of said power supplied to the AC load.
 14. The computerreadable storage medium of claim 13 wherein said computer-executableinstructions further performing the step of increasing said period whensaid power supplied to the AC load is relatively low and decreasing saidperiod when said power supplied to the AC load is relatively high. 15.The computer readable storage medium of claim 1 wherein saidcomputer-executable instructions further performing the step ofadjusting said reference voltage periodically.
 16. A computer readablestorage medium encoded with computer-executable instructions forcontrolling power drawn from an energy converter by an energy transferdevice to supply an AC load, where the energy converter is operable toconvert physical energy into electrical energy, the computer-executableinstructions performing the steps of changing by the energy transferdevice the amount of power drawn from the energy converter when a supplyvoltage of the energy converter meets a criterion, said criterion and achange in the amount of power drawn from the energy converter beingdependent upon a present amount of power supplied to the AC load,deeming said supply voltage to satisfy said criterion when said supplyvoltage is within a first range of voltages relative to a referencevoltage, increasing said reference voltage when the change in the amountof power drawn from the energy converter results in a change in saidsupply voltage within a second range.
 17. The computer readable storagemedium of claim 16 wherein said second range is dependent upon thepresent amount of power being supplied to the AC load.
 18. The computerreadable storage medium of claim 17 wherein said second range isrelatively small when the present amount of power supplied to the ACload is relatively large and wherein said second range is relativelylarge when the present amount of power supplied to the AC load isrelatively small.
 19. The computer readable storage medium of claim 16wherein an amount by which said reference voltage is decreased isdependent upon the present amount of power supplied to the AC load. 20.The computer readable storage medium of claim 19 wherein the amount bywhich said reference voltage is decreased is relatively large when thepresent amount of power supplied to the AC load is relatively low andwherein the amount by which said reference voltage is decreased isrelatively low when the present amount of power supplied to the AC loadis relatively high.